Drop root windows from some internal apis
authorMatthias Clasen <mclasen@redhat.com>
Tue, 8 Aug 2017 19:43:03 +0000 (15:43 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Fri, 11 Aug 2017 19:45:23 +0000 (15:45 -0400)
_gdk_device_query_state was needlessly shuffling
root windows around.

gdk/broadway/gdkdevice-broadway.c
gdk/gdkdevice.c
gdk/gdkdeviceprivate.h
gdk/mir/gdkmirwindowimpl.c
gdk/wayland/gdkdevice-wayland.c
gdk/wayland/gdkwindow-wayland.c
gdk/win32/gdkdevice-virtual.c
gdk/win32/gdkwindow-win32.c
gdk/x11/gdkdevice-core-x11.c
gdk/x11/gdkdevice-xi2.c
gdk/x11/gdkwindow-x11.c

index 5c9283795d64e4ac5edb031cc69d2adc67306190..b3abec01f7150f9e9258e7cba7693067b20294a7 100644 (file)
@@ -42,7 +42,6 @@ static void gdk_broadway_device_warp (GdkDevice *device,
                                      gdouble    y);
 static void gdk_broadway_device_query_state (GdkDevice        *device,
                                              GdkWindow        *window,
-                                             GdkWindow       **root_window,
                                              GdkWindow       **child_window,
                                              gdouble          *root_x,
                                              gdouble          *root_y,
@@ -143,7 +142,6 @@ gdk_broadway_device_warp (GdkDevice *device,
 static void
 gdk_broadway_device_query_state (GdkDevice        *device,
                                 GdkWindow        *window,
-                                GdkWindow       **root_window,
                                 GdkWindow       **child_window,
                                 gdouble          *root_x,
                                 gdouble          *root_y,
@@ -170,12 +168,6 @@ gdk_broadway_device_query_state (GdkDevice        *device,
   impl = GDK_WINDOW_IMPL_BROADWAY (window->impl);
   toplevel = impl->wrapper;
 
-  if (root_window)
-    {
-      screen = gdk_window_get_screen (window);
-      *root_window = gdk_screen_get_root_window (screen);
-    }
-
   _gdk_broadway_server_query_mouse (broadway_display->server,
                                    &mouse_toplevel_id,
                                    &device_root_x,
@@ -347,7 +339,7 @@ gdk_broadway_device_window_at_position (GdkDevice       *device,
   screen = gdk_display_get_default_screen (gdk_device_get_display (device));
   root_window = gdk_screen_get_root_window (screen);
 
-  gdk_broadway_device_query_state (device, root_window, NULL, &window, NULL, NULL, win_x, win_y, mask);
+  gdk_broadway_device_query_state (device, root_window, &window, NULL, NULL, win_x, win_y, mask);
 
   return window;
 }
index 13451a5400594016534094a0f3bc12d6f8867140..62ee1cf730ab476c0959485591c99bfc7ce89ba1 100644 (file)
@@ -586,7 +586,6 @@ gdk_device_get_position_double (GdkDevice        *device,
   GdkDisplay *display;
   gdouble tmp_x, tmp_y;
   GdkScreen *default_screen;
-  GdkWindow *root;
 
   g_return_if_fail (GDK_IS_DEVICE (device));
   g_return_if_fail (gdk_device_get_source (device) != GDK_SOURCE_KEYBOARD);
@@ -600,12 +599,12 @@ gdk_device_get_position_double (GdkDevice        *device,
 
   _gdk_device_query_state (device,
                            gdk_screen_get_root_window (default_screen),
-                           &root, NULL,
+                           NULL,
                            &tmp_x, &tmp_y,
                            NULL, NULL, NULL);
 
   if (screen)
-    *screen = gdk_window_get_screen (root);
+    *screen = default_screen;
   if (x)
     *x = tmp_x;
   if (y)
@@ -1838,7 +1837,6 @@ _gdk_device_translate_axis (GdkDevice *device,
 void
 _gdk_device_query_state (GdkDevice        *device,
                          GdkWindow        *window,
-                         GdkWindow       **root_window,
                          GdkWindow       **child_window,
                          gdouble          *root_x,
                          gdouble          *root_y,
@@ -1848,7 +1846,6 @@ _gdk_device_query_state (GdkDevice        *device,
 {
   GDK_DEVICE_GET_CLASS (device)->query_state (device,
                                               window,
-                                              root_window,
                                               child_window,
                                               root_x,
                                               root_y,
index 22d5097d1264d9c6574e2029eacb2754af2b4eb1..86d2a55fb626a5285aad9c0815f99d96c8704de9 100644 (file)
@@ -94,7 +94,6 @@ struct _GdkDeviceClass
                               gdouble     y);
   void (* query_state)       (GdkDevice       *device,
                               GdkWindow       *window,
-                              GdkWindow      **root_window,
                               GdkWindow      **child_window,
                               gdouble          *root_x,
                               gdouble          *root_y,
@@ -172,7 +171,6 @@ void _gdk_device_remove_slave (GdkDevice *device,
                                GdkDevice *slave);
 void _gdk_device_query_state                  (GdkDevice        *device,
                                                GdkWindow        *window,
-                                               GdkWindow       **root_window,
                                                GdkWindow       **child_window,
                                                gdouble          *root_x,
                                                gdouble          *root_y,
index 50406d7877f25e8e0868bc9dc0c352266acbe0ad..e92c85ec8e478d09a1297dae45b42d4aeeb65157 100644 (file)
@@ -1327,7 +1327,7 @@ gdk_mir_window_impl_get_device_state (GdkWindow       *window,
 {
   GdkWindow *child;
 
-  _gdk_device_query_state (device, window, NULL, &child, NULL, NULL, x, y, mask);
+  _gdk_device_query_state (device, window, &child, NULL, NULL, x, y, mask);
 
   return child != NULL;
 }
index e1bccc606d73481802a5c1c97a728e3b7786d0df..664eebeb987e1c62f568f7b689caaf9fd6b7d148 100644 (file)
@@ -583,7 +583,6 @@ device_get_modifiers (GdkDevice *device)
 static void
 gdk_wayland_device_query_state (GdkDevice        *device,
                                 GdkWindow        *window,
-                                GdkWindow       **root_window,
                                 GdkWindow       **child_window,
                                 gdouble          *root_x,
                                 gdouble          *root_y,
@@ -591,16 +590,10 @@ gdk_wayland_device_query_state (GdkDevice        *device,
                                 gdouble          *win_y,
                                 GdkModifierType  *mask)
 {
-  GdkWaylandSeat *seat;
   GdkWaylandPointerData *pointer;
-  GdkScreen *default_screen;
 
-  seat = GDK_WAYLAND_SEAT (gdk_device_get_seat (device));
   pointer = GDK_WAYLAND_DEVICE (device)->pointer;
-  default_screen = gdk_display_get_default_screen (seat->display);
 
-  if (root_window)
-    *root_window = gdk_screen_get_root_window (default_screen);
   if (child_window)
     /* Set child only if actually a child of the given window, as XIQueryPointer() does */
     *child_window = g_list_find (window->children, pointer->focus) ? pointer->focus : NULL;
index 1b42371a466acc53e327f52d967c9741b4d10274..b6c4cee15908ae8a2e4c9d519891ac88a1711d21 100644 (file)
@@ -2780,7 +2780,7 @@ gdk_window_wayland_get_device_state (GdkWindow       *window,
       GdkWindow *child;
 
       GDK_DEVICE_GET_CLASS (device)->query_state (device, window,
-                                                  NULL, &child,
+                                                  &child,
                                                   NULL, NULL,
                                                   x, y, mask);
       return_val = (child != NULL);
index 452bd39a473ec384cd5956dbd81c83d0b577729d..36c533b8867a1e90495cd913161703630c7fe602 100644 (file)
@@ -133,7 +133,6 @@ gdk_device_virtual_warp (GdkDevice *device,
 static void
 gdk_device_virtual_query_state (GdkDevice        *device,
                                GdkWindow        *window,
-                               GdkWindow       **root_window,
                                GdkWindow       **child_window,
                                gdouble          *root_x,
                                gdouble          *root_y,
@@ -144,7 +143,7 @@ gdk_device_virtual_query_state (GdkDevice        *device,
   GdkDeviceVirtual *virtual = GDK_DEVICE_VIRTUAL (device);
 
   _gdk_device_query_state (virtual->active_device,
-                          window, root_window, child_window,
+                          window, child_window,
                           root_x, root_y,
                           win_x, win_y,
                           mask);
index a545611d744f6f52fc46f997f7602c83519603de..6d8f07893d7861aed7c940c36970f627a785b861 100644 (file)
@@ -2214,7 +2214,7 @@ gdk_window_win32_get_device_state (GdkWindow       *window,
   g_return_val_if_fail (window == NULL || GDK_IS_WINDOW (window), FALSE);
 
   GDK_DEVICE_GET_CLASS (device)->query_state (device, window,
-                                              NULL, &child,
+                                              &child,
                                               NULL, NULL,
                                               x, y, mask);
   return (child != NULL);
index 8df9cced6b9ddea1dc5efe8ce3e55c51be26c015..574a45b47e0203cf8cf58f3ae1669d9d32073dbe 100644 (file)
@@ -60,7 +60,6 @@ static void     gdk_x11_device_core_warp (GdkDevice *device,
                                           gdouble    y);
 static void gdk_x11_device_core_query_state (GdkDevice        *device,
                                              GdkWindow        *window,
-                                             GdkWindow       **root_window,
                                              GdkWindow       **child_window,
                                              gdouble          *root_x,
                                              gdouble          *root_y,
@@ -250,7 +249,6 @@ gdk_x11_device_core_warp (GdkDevice *device,
 static void
 gdk_x11_device_core_query_state (GdkDevice        *device,
                                  GdkWindow        *window,
-                                 GdkWindow       **root_window,
                                  GdkWindow       **child_window,
                                  gdouble          *root_x,
                                  gdouble          *root_y,
@@ -297,9 +295,6 @@ gdk_x11_device_core_query_state (GdkDevice        *device,
       XDestroyWindow (xdisplay, w);
     }
 
-  if (root_window)
-    *root_window = gdk_x11_window_lookup_for_display (display, xroot_window);
-
   if (child_window)
     *child_window = gdk_x11_window_lookup_for_display (display, xchild_window);
 
index 23816ecbe119f3308832d797260967d74449f703..6b22abbf0d0b4b96340d50de19f2ff2f365a01e2 100644 (file)
@@ -85,7 +85,6 @@ static void gdk_x11_device_xi2_warp (GdkDevice *device,
                                      gdouble    y);
 static void gdk_x11_device_xi2_query_state (GdkDevice        *device,
                                             GdkWindow        *window,
-                                            GdkWindow       **root_window,
                                             GdkWindow       **child_window,
                                             gdouble          *root_x,
                                             gdouble          *root_y,
@@ -271,7 +270,7 @@ gdk_x11_device_xi2_get_state (GdkDevice       *device,
 
   if (mask)
     gdk_x11_device_xi2_query_state (device, window,
-                                    NULL, NULL,
+                                    NULL,
                                     NULL, NULL,
                                     NULL, NULL,
                                     mask);
@@ -321,7 +320,6 @@ gdk_x11_device_xi2_warp (GdkDevice *device,
 static void
 gdk_x11_device_xi2_query_state (GdkDevice        *device,
                                 GdkWindow        *window,
-                                GdkWindow       **root_window,
                                 GdkWindow       **child_window,
                                 gdouble          *root_x,
                                 gdouble          *root_y,
@@ -347,7 +345,7 @@ gdk_x11_device_xi2_query_state (GdkDevice        *device,
       GdkDevice *master = gdk_device_get_associated_device (device);
 
       if (master)
-        _gdk_device_query_state (master, window, root_window, child_window,
+        _gdk_device_query_state (master, window, child_window,
                                  root_x, root_y, win_x, win_y, mask);
       return;
     }
@@ -387,9 +385,6 @@ gdk_x11_device_xi2_query_state (GdkDevice        *device,
       XDestroyWindow (xdisplay, w);
     }
 
-  if (root_window)
-    *root_window = gdk_x11_window_lookup_for_display (display, xroot_window);
-
   if (child_window)
     *child_window = gdk_x11_window_lookup_for_display (display, xchild_window);
 
index e76f3b5413c63018893862121733868ba814c570..7d369079e8922e46b364d87f1c9978ac808f8053 100644 (file)
@@ -2791,7 +2791,7 @@ gdk_window_x11_get_device_state (GdkWindow       *window,
 
   /*HIDPI: handle coords here?*/
   GDK_DEVICE_GET_CLASS (device)->query_state (device, window,
-                                              NULL, &child,
+                                              &child,
                                               NULL, NULL,
                                               x, y, mask);
   return child != NULL;